【OpenGL】Ubuntu 20.04 配置 OpenGL 环境

您所在的位置:网站首页 opengl api version 【OpenGL】Ubuntu 20.04 配置 OpenGL 环境

【OpenGL】Ubuntu 20.04 配置 OpenGL 环境

#【OpenGL】Ubuntu 20.04 配置 OpenGL 环境| 来源: 网络整理| 查看: 265

0. 前言

关于几种开发环境的组合,参考这篇博客:

1. 安装 CLion

安装包下载链接:

cd /usr/local sudo mkdir clion

将下载得到的压缩包解压到目标文件夹下:

sudo tar -zxvf CLion-2021.2.2.tar.gz -C /usr/local/clion

创建打开软件的快捷方式:

touch CLion.desktop

填入下面的内容:

[Desktop Entry] Encoding=UTF-8 Name=CLion Exec=/usr/local/clion/clion-2021.2.2/bin/clion.sh Icon=/usr/local/clion/clion-2021.2.2/bin/clion.png Terminal=False Type=Application StartupNotify=False Categories=Application;Development

然后右键打开属性,修改文件的权限为可读可写,可作为可执行文件。 将其移动到指定文件夹中:

sudo mv CLion.desktop /usr/share/applications

然后就可以在启动台中找到该软件。

2. 安装相关包sudo apt-get install build-essential libgl1-mesa-dev sudo apt-get install freeglut3-dev sudo apt-get install libglew-dev libsdl2-dev libsdl2-image-dev libglm-dev libfreetype6-dev 3. 编译测试

新建一个名为test的C项目。

// main.c #include void myDisplay(void) { glClear(GL_COLOR_BUFFER_BIT); glRectf(-0.5f, -0.5f, 0.5f, 0.5f); glFlush(); } int main(int argc, char *argv[]){ glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE); glutInitWindowPosition(100, 100); glutInitWindowSize(400, 400); glutCreateWindow("window name"); glutDisplayFunc(&myDisplay); glutMainLoop(); return 0; } # CMakeLists.txt cmake_minimum_required(VERSION 3.14) project(test) set(CMAKE_CXX_STANDARD 11) add_executable(test main.c) set(TARGET_LIB "/usr/lib/x86_64-linux-gnu/libGL.so" "/usr/lib/x86_64-linux-gnu/libGLU.so" "/usr/lib/x86_64-linux-gnu/libglut.so" ) target_link_libraries(test ${TARGET_LIB})

编译运行,效果如下:

4. glfw+glad 开发环境配置sudo apt-get install libglfw3-dev # 安装glfw3 sudo apt install mesa-utils DISPLAY=:0 glxgears -info | grep GL_VERSION # 查看显卡对应的 opengl 版本

输出如下结果:

GL_VERSION = 4.6 (Compatibility Profile) Mesa 21.0.3

在该网站(https://glad.dav1d.de)进行选择,然后生成代码文件:

将zip文件解压后,将文件移动到指定路径下:

cd glad/include sudo mv glad/ /usr/local/include #将glad目录移动到/usr/local/include sudo mv KHR/ /usr/local/include #将KHR目录移动到/usr/local/include # 最后将glad/src目录下的glad.c文件拷贝一份到你的工程源码目录下,如跟main.cpp文件在同一个目录下。 // main.cpp #include #include // Standard Headers #include #include #include void framebuffer_size_callback(GLFWwindow *window, int width, int height);//回调函数原型声明 void processInput(GLFWwindow *window); // settings const unsigned int SCR_WIDTH = 800; const unsigned int SCR_HEIGHT = 600; int main() { //初始化GLFW glfwInit(); glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); //创建一个窗口对象 GLFWwindow *window = glfwCreateWindow(SCR_WIDTH, SCR_HEIGHT, "GLFW 3.3.1", NULL, NULL); if (window == NULL) { std::cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3